
unit DM;

interface

uses
 windows, Data.DB, Data.Win.ADODB, System.Classes, frxClass, frxDBSet;

type
  TBase = class(TDataModule)
    cliente: TADOTable;
    DSCLIENTE: TDataSource;
    DSPRODUTO: TDataSource;
    produtos: TADOTable;
    DSCATEGORIA: TDataSource;
    Sistema: TADOConnection;
    Categoria: TADOTable;
    venda: TADOTable;
    detalvenda: TADOTable;
    DSDETALHEVENDA: TDataSource;
    DSVENDA: TDataSource;
    Comando: TADOQuery;
    Categoriacategoria: TStringField;
    Parcela: TADOTable;
    DSPARCELA: TDataSource;
    Consulta: TADOQuery;
    DSCONSULTA: TDataSource;
    DSCOMANDO: TDataSource;
    Comando2: TADOQuery;
    DSCOMANDO2: TDataSource;
    Parcelacliente: TADOQuery;
    DSPARCELACLIENTE: TDataSource;
    produtosId: TIntegerField;
    produtosCodigo: TStringField;
    produtosDescricao: TStringField;
    produtosMarca: TStringField;
    produtosModelo: TStringField;
    produtosCor: TStringField;
    produtosDatareajuste: TStringField;
    produtosVenda: TFloatField;
    produtosAtivo: TStringField;
    produtosReajuste: TStringField;
    produtosCategoria: TStringField;
    vendaid: TIntegerField;
    vendaNome: TStringField;
    vendaParcelas: TIntegerField;
    vendaDias: TIntegerField;
    vendaDatavenda: TStringField;
    vendacpf: TStringField;
    vendaendereco: TStringField;
    vendabairro: TStringField;
    vendacidade: TStringField;
    vendaestado: TStringField;
    vendatelefone: TStringField;
    vendacelular: TStringField;
    vendanumero: TStringField;
    vendavalorvenda: TFloatField;
    detalvendaid: TIntegerField;
    detalvendaCodigoproduto: TStringField;
    detalvendaNomeproduto: TStringField;
    detalvendaQuantidade: TIntegerField;
    detalvendaValor: TFloatField;
    detalvendacpf: TStringField;
    detalvendatotal: TFloatField;
    Parcelaid: TIntegerField;
    ParcelaCodigocliente: TStringField;
    ParcelaCodigovenda: TStringField;
    ParcelaVencimento: TStringField;
    ParcelaParcela: TIntegerField;
    ParcelaValor: TFloatField;
    ParcelaMulta: TFloatField;
    ParcelaJuros: TFloatField;
    ParcelaDesconto: TFloatField;
    ParcelaTotal: TFloatField;
    ParcelaPagamento: TStringField;
    ParcelaNome: TStringField;
    Parcelacpf: TStringField;
    clienteId: TIntegerField;
    clienteCodigo: TStringField;
    clienteNome: TStringField;
    clienteConjuje: TStringField;
    clienteEndereco: TStringField;
    clienteCidade: TStringField;
    clienteBairro: TStringField;
    clienteTelefone: TStringField;
    clienteCelular: TStringField;
    clienteEmpresa: TStringField;
    clienteEnderecotrabalho: TStringField;
    clienteCidadetrabalho: TStringField;
    clienteBairrotrabalho: TStringField;
    clienteRG: TStringField;
    clienteIdentificacao: TStringField;
    clienteRemuneracao: TFloatField;
    clienteDependente: TStringField;
    clienteNomedependente: TStringField;
    clienteReferencia: TStringField;
    clienteNascimento: TStringField;
    clienteProfissao: TStringField;
    clienteApelido: TStringField;
    clienteLimitecompra: TFloatField;
    clienteEstadocivil: TStringField;
    clienteEstado: TStringField;
    clienteSexo: TStringField;
    clienteNUMERO: TStringField;
    clienteTELEFONETRABALHO: TStringField;
    clienteEMAIL: TStringField;
    clienteCOMPLEMENTO: TStringField;
    clienteNUMEROTRABALHO: TStringField;
    clienteUFTRABALHO: TStringField;
    clienteREFERENCIAENDERECO: TStringField;
    clienteCEP: TStringField;
    clienteCPF: TStringField;
    clienteativo: TStringField;
    ComandoCliente: TADOQuery;
    DSCOMANDOCLIENTE: TDataSource;
    ComandoClienteId: TIntegerField;
    ComandoClienteCodigo: TStringField;
    ComandoClienteNome: TStringField;
    ComandoClienteConjuje: TStringField;
    ComandoClienteEndereco: TStringField;
    ComandoClienteCidade: TStringField;
    ComandoClienteBairro: TStringField;
    ComandoClienteTelefone: TStringField;
    ComandoClienteCelular: TStringField;
    ComandoClienteEmpresa: TStringField;
    ComandoClienteEnderecotrabalho: TStringField;
    ComandoClienteCidadetrabalho: TStringField;
    ComandoClienteBairrotrabalho: TStringField;
    ComandoClienteRG: TStringField;
    ComandoClienteIdentificacao: TStringField;
    ComandoClienteRemuneracao: TFloatField;
    ComandoClienteDependente: TStringField;
    ComandoClienteNomedependente: TStringField;
    ComandoClienteReferencia: TStringField;
    ComandoClienteNascimento: TStringField;
    ComandoClienteProfissao: TStringField;
    ComandoClienteApelido: TStringField;
    ComandoClienteLimitecompra: TFloatField;
    ComandoClienteEstadocivil: TStringField;
    ComandoClienteEstado: TStringField;
    ComandoClienteSexo: TStringField;
    ComandoClienteNUMERO: TStringField;
    ComandoClienteTELEFONETRABALHO: TStringField;
    ComandoClienteEMAIL: TStringField;
    ComandoClienteCOMPLEMENTO: TStringField;
    ComandoClienteNUMEROTRABALHO: TStringField;
    ComandoClienteUFTRABALHO: TStringField;
    ComandoClienteREFERENCIAENDERECO: TStringField;
    ComandoClienteCEP: TStringField;
    ComandoClienteCPF: TStringField;
    ComandoClienteativo: TStringField;
    Comando2Id: TIntegerField;
    Comando2Codigo: TStringField;
    Comando2Descricao: TStringField;
    Comando2Marca: TStringField;
    Comando2Modelo: TStringField;
    Comando2Cor: TStringField;
    Comando2Datareajuste: TStringField;
    Comando2Venda: TFloatField;
    Comando2Ativo: TStringField;
    Comando2Reajuste: TStringField;
    Comando2Categoria: TStringField;
    Parcelaclienteid: TIntegerField;
    ParcelaclienteCodigocliente: TStringField;
    ParcelaclienteCodigovenda: TStringField;
    ParcelaclienteVencimento: TStringField;
    ParcelaclienteParcela: TIntegerField;
    ParcelaclienteValor: TFloatField;
    ParcelaclienteMulta: TFloatField;
    ParcelaclienteJuros: TFloatField;
    ParcelaclienteDesconto: TFloatField;
    ParcelaclienteTotal: TFloatField;
    ParcelaclientePagamento: TStringField;
    ParcelaclienteNome: TStringField;
    Parcelaclientecpf: TStringField;
    Query: TADOQuery;
    detalvendaMarca: TStringField;
    detalvendaModelo: TStringField;
    detalvendaCor: TStringField;
    ComandoVenda: TADOQuery;
    DSComandoVenda: TDataSource;
    ComandoDetalhe: TADOQuery;
    DSComandodetalhe: TDataSource;
    ComandoDetalheid: TIntegerField;
    ComandoDetalheCodigoproduto: TStringField;
    ComandoDetalheNomeproduto: TStringField;
    ComandoDetalheQuantidade: TIntegerField;
    ComandoDetalheValor: TFloatField;
    ComandoDetalhecpf: TStringField;
    ComandoDetalheMarca: TStringField;
    ComandoDetalheModelo: TStringField;
    ComandoDetalheCor: TStringField;
    ComandoDetalhetotal: TFloatField;
    ComandoVendaid: TIntegerField;
    ComandoVendaNome: TStringField;
    ComandoVendaParcelas: TIntegerField;
    ComandoVendaDias: TIntegerField;
    ComandoVendaDatavenda: TStringField;
    ComandoVendacpf: TStringField;
    ComandoVendaendereco: TStringField;
    ComandoVendabairro: TStringField;
    ComandoVendacidade: TStringField;
    ComandoVendaestado: TStringField;
    ComandoVendatelefone: TStringField;
    ComandoVendacelular: TStringField;
    ComandoVendanumero: TStringField;
    ComandoVendavalorvenda: TFloatField;
    Ativador: TADOQuery;
    ParcelaPago: TStringField;
    ParcelaclientePago: TStringField;
    DSCartao: TDataSource;
    DSParcelacartao: TDataSource;
    Cartao: TADOQuery;
    Parcelacartao: TADOQuery;
    ParcelacartaoId: TIntegerField;
    ParcelacartaoCodigo: TStringField;
    Parcelacartaobanco: TStringField;
    Parcelacartaoparcela: TIntegerField;
    Parcelacartaodatavenda: TStringField;
    Parcelacartaoautorizacao: TStringField;
    Parcelacartaovalor: TFloatField;
    Parcelacartaodatarecebimento: TDateTimeField;
    Parcelacartaotipo: TStringField;
    ParcelacartaoObservacao: TStringField;
    CartaoId: TIntegerField;
    CartaoCodigo: TStringField;
    Cartaobanco: TStringField;
    Cartaodatavenda: TStringField;
    Cartaoautorizacao: TStringField;
    Cartaovalor: TFloatField;
    Cartaovalorliquido: TFloatField;
    Cartaotaxa: TFloatField;
    Cartaovalortaxa: TFloatField;
    Cartaotipo: TStringField;
    CartaoObservacao: TStringField;
    vendaCodcliente: TStringField;
    ComandoVendaCodcliente: TStringField;
    detalvendadatavenda: TStringField;
    DSbandeira: TDataSource;
    bandeira: TADOQuery;
    bandeiraDescricao: TStringField;
    bandeirataxa: TFloatField;
    vendaimprimir: TStringField;
    ComandoVendaimprimir: TStringField;
    clientepai: TStringField;
    clientemae: TStringField;
    vendaPedido: TStringField;
    detalvendaPedido: TStringField;
    ParcelaPedido: TStringField;
    ParcelaclientePedido: TStringField;
    ComandoDetalhePedido: TStringField;
    ComandoDetalhedatavenda: TStringField;
    ComandoVendaPedido: TStringField;
    comandoproduto: TADOQuery;
    DSCOMANDOPRODUTO: TDataSource;
    procedure DataModuleCreate(Sender: TObject);
    procedure ParcelaFilterRecord(DataSet: TDataSet; var Accept: Boolean);
    procedure SistemaBeforeConnect(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Base: TBase;
  lpBuffer : Array[0..20] of Char;
  nSize : dWord;
  mRet : boolean;

implementation

Uses Registry, venda;

{%CLASSGROUP 'Vcl.Controls.TControl'}

{$R *.dfm}


Function RetNmComp: String;
begin
  nSize :=120;
  mRet:= GetComputerName(lpBuffer,nSize);
  if mRet then
    Result:= lpBuffer
end;

procedure TBase.DataModuleCreate(Sender: TObject);
begin
sistema.Connected:= false;
sistema.ConnectionString:= '';

//Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Data Source=NOTEBOOK\SQLEXPRESS
//Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Data Source=ANDERSON\SQLEXPRESS
end;


procedure TBase.ParcelaFilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
Accept:= parcela.FieldByName('pago').AsString <> 'Sim';
end;

procedure TBase.SistemaBeforeConnect(Sender: TObject);
begin
sistema.Connected:= false;
sistema.ConnectionString:= '';
end;

end.
